package com.zr.service.sys;

import com.github.pagehelper.PageInfo;
import com.zr.vo.sys.SysUser;
import org.springframework.web.multipart.MultipartFile;

import java.io.IOException;
import java.util.List;

/**
 * 用户操作 服务层
 */
public interface SysUserService {
    /**
     * 用户登录
     * @param sysUser
     * @return
     * @author liutienan
     */
    SysUser login(SysUser sysUser);

    /**
     * 获取用户头像Base64编码
     * @param imgUrl
     * @return
     */
    String getHeadImgUrl(String imgUrl);

    /**
     * 上传头像
     * @param file
     * @return
     * @throws IOException
     */
    String setHeadImg(MultipartFile file) throws IOException;

    /**
     * 条件查询用户列表
     * @param sysUser
     * @return
     */
    PageInfo<SysUser> list(SysUser sysUser);

    /**
     * 删除用户
     * @param id
     * @return
     */
    int remove(Integer id);

    /**
     * 更改用户状态
     * @param sysUser
     * @return
     */
    int change(SysUser sysUser);

    /**
     * 新增用户
     * @param sysUser
     * @return
     */
    int add(SysUser sysUser);

    /**
     * 编辑用户
     * @param sysUser
     * @return
     */
    int edit(SysUser sysUser);

    /**
     * 用户退出
     *
     */
    void logout();

    List<SysUser> getPersonInfo();
}
